Universidad de Costa Rica, escuela de Geografía

GF-0604 Procesamiento de datos geográficos

Profesor: Manuel Vargas del Valle

Introducción:

Este informe tiene como finalidad demostrar la utilidad de utilizar datos y realizar diferentes estadísticos con ellos como tablas y gráficos con diferentes paquetes de R. Estos paquetes se encuentran especificados en la sección de carga de paquetes y lectura de datos. Además, es importante señalar que esta página web cuenta con una serie de botones “code”, que permiten al lector observar el código utilizado para generar cada uno de los productos.

Desarrollo:

knitr::opts_chunk$set(echo = TRUE)

Carga de paquetes y lectura de datos:

### Carga de paquetes:
library(dplyr)
library(ggplot2)
library(ggthemes)
library(plotly)
library(DT)
library(readr)
library(readxl)
library(lubridate)
library(tidyverse)
Est_pol <-
read_xls("estadisticaspoliciales2021.xls") 

Tabla 1. DT interactiva de las estadísticas policiales del (OIJ):

Est_pol %>%
  dplyr::select(Delito, Fecha, Victima, Edad, Genero, Provincia, Canton) %>%
  datatable(colnames = c(
    "Delito",
    "Fecha",
    "Víctima",
    "Edad",
    "Género",
    "Provincia",
    "Cantón"
  ), options = list(pageLength = 5, language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')))
## Warning in instance$preRenderHook(instance): It seems your data is too big
## for client-side DataTables. You may consider server-side processing: https://
## rstudio.github.io/DT/server.html

Gráfico 1. Gráfico de la cantidad de delitos por tipo de delito registrados por el (OIJ) en el 2021:

# Gráfico de la cantidad de delitos por tipo de delito:

Delitos <-
Est_pol %>%
  count(Delito) %>%
  ggplot(aes(x = reorder(Delito, n), y = n)) + 
  geom_bar(stat = "identity") +
coord_flip() +
ggtitle("Cantidad de delitos por tipo de delito") + 
  xlab("Tipo de delito") + 
  ylab("Cantidad de delitos") + 
  theme_minimal()
ggplotly(Delitos) %>% 
  config(locale = 'es')

Grafico 2. Muestra interactivamente la cantidad de delitos por mes registrados por el (OIJ) en el 2021:

Del_mes <- Est_pol %>%
  dplyr::select(Fecha, Delito, Hora)
graph2 <- 
Del_mes %>% mutate(mes = month(Fecha, label = FALSE)) %>%
  ggplot() +
  geom_bar(aes(x = mes), fill = "navy", color = "gold") + 
  ggtitle("Cantidad de delitos por mes") + 
  xlab("Mes (1-11)") + 
  ylab("Cantidad") + 
  theme_minimal() 
ggplotly(graph2) %>%
  config(locale = 'es')
Nota: Los datos utilizados para generar el gráfico 2, cuenta con datos únicamente de Enero a Noviembre del mes 1 al 11.

Gráfico 3. Barras apiladas: Muestra la proporción de delitos por género registrados por el (OIJ) en el 2021:

Propor_gen <- Est_pol %>%
  dplyr::select(Delito, Genero)
# ggplotly - Gráfico de barras apiladas de proporciones

Apiladas_propor_genero <-
  Propor_gen %>%
  ggplot(aes(x = Genero, fill = Delito)) + 
  geom_bar(position = "fill") +
  ggtitle("Proporción de la ocurrencia de delitos por género") +
  xlab("Delito") +
  ylab("Proporción") +
  labs(fill = "Delito") +
  theme_minimal()

ggplotly(Apiladas_propor_genero) %>% config(locale = 'es')